package com.emp.model;

import java.util.List;

public class EmpService {

	private EmpDAO_interface dao;

	public EmpService() {
		dao = new EmpDAO();
	}

	public EmpVO addEmp(
	 String  emp_account,
	 String  emp_pswd,       
	 String  emp_rocid,       
	 String  emp_name,       
	 String  emp_sex,         
	 java.sql.Date    emp_birthday,    
	 String  emp_phone1,     
	 String  emp_phone2,      
	 String  emp_email,       
	 String  emp_addr,        
	 String  emp_censusaddr,  
	 java.sql.Date    hiredate,        
	 java.sql.Date    departure_date) {

		EmpVO empVO = new EmpVO();

		empVO.setEmp_account(emp_account);
		empVO.setEmp_pswd(emp_pswd);
		empVO.setEmp_rocid(emp_rocid);
		empVO.setEmp_name(emp_name);
		empVO.setEmp_sex(emp_sex);
		empVO.setEmp_birthday(emp_birthday);
		empVO.setEmp_phone1(emp_phone1);
		empVO.setEmp_phone2(emp_phone2);
		empVO.setEmp_email(emp_email);
		empVO.setEmp_addr(emp_addr);
		empVO.setEmp_censusaddr(emp_censusaddr);
		empVO.setHiredate(hiredate);
		empVO.setDeparture_date(departure_date);

		dao.insert(empVO);

		return empVO;
	}

	public EmpVO updateEmp(	 
			 Integer emp_no,
			 String  emp_account,
			 String  emp_pswd,       
			 String  emp_rocid,       
			 String  emp_name,       
			 String  emp_sex,         
			 java.sql.Date    emp_birthday,    
			 String  emp_phone1,     
			 String  emp_phone2,      
			 String  emp_email,       
			 String  emp_addr,        
			 String  emp_censusaddr,  
			 java.sql.Date    hiredate,        
			 java.sql.Date    departure_date) {

		EmpVO empVO = new EmpVO();

		empVO.setEmp_no(emp_no);
		empVO.setEmp_account(emp_account);
		empVO.setEmp_pswd(emp_pswd);
		empVO.setEmp_rocid(emp_rocid);
		empVO.setEmp_name(emp_name);
		empVO.setEmp_sex(emp_sex);
		empVO.setEmp_birthday(emp_birthday);
		empVO.setEmp_phone1(emp_phone1);
		empVO.setEmp_phone2(emp_phone2);
		empVO.setEmp_email(emp_email);
		empVO.setEmp_addr(emp_addr);
		empVO.setEmp_censusaddr(emp_censusaddr);
		empVO.setHiredate(hiredate);
		empVO.setDeparture_date(departure_date);
		dao.update(empVO);

		return empVO;
	}

	public void deleteEmp(Integer empno) {
		dao.delete(empno);
	}

	public EmpVO getOneEmp(Integer empno) {
		return dao.findByPrimaryKey(empno);
	}

	public List<EmpVO> getAll() {
		return dao.getAll();
	}
}
